package com.yls.except.service;

import java.util.List;
import java.util.Map;

/**
 * 银行卡service
 * Created by xs on 2016/8/3.
 */
public interface BankService {

    /**
     * 新增银行卡绑定
     * @param uid 用户id
     * @param name 姓名
     * @param bankname 银行卡名称
     * @param bankaddress 开户行地址
     * @param card 银行卡号
     * @param phone 预留手机号
     * @param reqip
     * @return 新增状态（大于0成功，否则失败）
     */
    int insertBindingBank(String uid, String name, String bankname, String bankaddress, String card, String phone, String reqip);

    /**
     * 根据绑定银行卡编号查询银行卡绑定信息
     * @param bandingnum 绑定银行卡编号
     * @param uid
     * @return 银行卡绑定信息
     */
    Map<String,Object> selectBandingBankInfoById(String bandingnum, String uid);

    /**
     * 修改银行卡绑定信息
     * @param uid 用户id
     * @param name 用户名字
     * @param bankname 银行卡名称
     * @param bankaddress 开户行地址
     * @param card 银行卡号
     * @param phone 预留手机号
     * @param bandingnum 绑定编号
     * @return 修改状态（大于0成功，否则失败）
     */
    int updateBindingBank(String uid, String name, String bankname, String bankaddress, String card, String phone, String bandingnum);

    /**
     * 根据用户id查询用户绑定银行卡信息
     * @param uid 用户id
     * @return 用户绑定银行卡信息
     */
    List<Object> selectBandingBankInfoByUid(String uid);

    /**
     * 删除银行卡绑定信息
     * @param uid 用户id
     * @param bandingnum 银行卡绑定信息
     * @return 删除状态（大于0成功，否则失败）
     */
    int deleteBindingInfo(String uid, String bandingnum);

    /**
     * 新增提现申请
     * @param uid 用户id
     * @param bandingnum 银行卡绑定编号
     * @param withdrawmoney 提现金额
     * @param reqip
     * @return 新增状态（大于0成功，否则失败）
     */
    int insertWithDrawApply(String uid, String bandingnum, String withdrawmoney, String reqip);
}
